#ifndef MACRO_DEF_H
#define MACRO_DEF_H

//#define DESK_TOP_RUN

#define VERSION_S2 1
#define VERSION_S1 0
#define VERSION_S0 1

#define DEFAULT_FILE    "/opt/Data/default.ini"
#define SETTING_FILE    "/opt/Data/settings.ini"
#define RECORD_FILE     "/opt/Data/.database"
#define LOG_FILE        "/opt/Data/log.txt"
//fusion_push_ctrl signal groups: mode for level ,ctrl for posedge

#define rSCCB0_CTRCL    0
#define rSCCB0_READ     1
#define rCAM0_CTRL      2
#define rCAM0_BUF0      3
#define rCAM0_BUF1      4
#define rCAM0_BUF2      5
#define rCAM0_PARAM     6
#define rCAM0_SCALER    7
#define rCAM0_ERR       8
#define rCAM0_PWR       9

#define rSCCB1_CTRCL    10
#define rSCCB1_READ     11
#define rCAM1_CTRL      12
#define rCAM1_BUF0      13
#define rCAM1_BUF1      14
#define rCAM1_BUF2      15
#define rCAM1_PARAM     16
#define rCAM1_SCALER    17
#define rCAM1_ERR       18
#define rCAM1_PWR       19

#define rMENU_BUF0      20
#define rMENU_BUF1      21
#define rMENU_BUF2      22
#define rVGA_CTRL       23
#define rVGA_PCNT       24
#define rMENU_ALPHA     25
#define rBACKLIGHT      26

#define rMOTOR_SPPED    30
#define rL_MOTOR        31
#define rR_MOTOR        32
#define rX_MOTOR        33
#define rY_MOTOR        34

#define rGAOYA_TIME     40
#define rGAOYA_FRORCE   41
#define rHEAT_CTRL      42
#define rBEEP_ON        43
#define rBEEP_TONE      44
#define rRTC_CTRL       45
#define rRTC_READ       46
#define rTIME_LOAD      47
#define rDATE_REMOTE    48
#define rTIME_REMOTE    49
#define rDTAE_LOCAL     50
#define rTIME_LOCAL     51
#define rPARAM_CTRL     52
#define rPARAM_READ     53

#define rVIEW_XY        55
#define rKEY_VALUE      60
#define rFLOW_ERR       61
#define rFUSION_GAOYA   62
#define rFUSION_TIME    63
/*
always @(posedge clk ) caliberation  <= fusion_push_ctrl[0];
always @(posedge clk ) pausemode1    <= fusion_push_ctrl[1];
always @(posedge clk ) pausemode2    <= fusion_push_ctrl[2];
always @(posedge clk ) pausemode3    <= fusion_push_ctrl[3];
always @(posedge clk ) engineer_mode <= fusion_push_ctrl[7];
always @(posedge clk ) auto_splice   <= fusion_push_ctrl[8];
always @(posedge clk ) views_sel     <= fusion_push_ctrl[9];
always @(posedge clk ) push_en       <= fusion_push_ctrl[10];
always @(posedge clk ) tention_mod   <= fusion_push_ctrl[11];
always @(posedge clk ) last_push     <= fusion_push_ctrl[23:16] + 1;
always @(posedge clk ) last_spd      <= fusion_push_ctrl[31:24] + 1;
*/
#define rPUSH_CTRL      70
#define rBASE_X         71
#define rTOUCH_STATUS   72
#define rPIX_SENS       73
#define rBLACK_PIX      74
/*
always @(posedge clk ) fiber_align_ok  <= (fiber_aux_ctrl[0])&(~aux_ctrl_ff1[0]);
always @(posedge clk ) fiber_no_err    <= (fiber_aux_ctrl[2])&(~aux_ctrl_ff1[2]);
always @(posedge clk ) fusion_start    <= (fiber_aux_ctrl[3])&(~aux_ctrl_ff1[3]);
always @(posedge clk ) fusion_init     <= (fiber_aux_ctrl[4])&(~aux_ctrl_ff1[4]);
*/
#define rAUX_CTRL       75
#define rINFO_REQ       76
#define rLPUSH_CFG      77
#define rRPUSH_CFG      78
#define rPUSH_STAT      80
#define rFIBER_STATUS   81
#define rPUSH_MOTOR     82

#define rEDGE1_SUM      90
#define rEDGE2_SUM      91
#define rEDGE3_SUM      92
#define rEDGE4_SUM      93
#define rBOLD1_SUM      94
#define rBOLD2_SUM      95
#define rCORE1_SUM      96
#define rCORE2_SUM      97
#define rEDGE5_SUM      100
#define rEDGE6_SUM      101
#define rEDGE7_SUM      102
#define rEDGE8_SUM      103
#define rBOLD3_SUM      104
#define rBOLD4_SUM      105
#define rCORE3_SUM      106
#define rCORE4_SUM      107
#define rINFO_READY0    108
#define rINFO_READY1    109
#define rSD_WP          110
#define rENGIN_EDG0     111
#define rENGIN_EDG1     112
#define rCALIB_EDG0     113
#define rCALIB_EDG1     114
#define rCALIB_BRHT     118

#define rCORETEMP       160
#define rVCCINT         161
#define rVCCAUX         162
#define rVPIN           163
#define rVTMP           164

#define rMHID0          180
#define rMHID1          181

#define rVERSION        200


#endif // MACRO_DEF_H
